package com.tedu.udm.service;

import com.tedu.udm.pojo.dto.TeamAddNewDTO;
import com.tedu.udm.pojo.dto.TeamUpdateDTO;
import com.tedu.udm.pojo.vo.ClassListItemVO;
import com.tedu.udm.pojo.vo.TeamListItemVO;
import com.tedu.udm.pojo.vo.TeamStandardVO;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * 处理小组数据的业务接口
 *
 * @author java@tedu.cn
 * @version 0.0.1
 */
@Transactional
public interface ITeamService {

    /**
     * 添加小组
     *
     * @return 小组
     */
    void addNew(Long classId,TeamAddNewDTO teamAddNewDTO);

    /**
     * 删除小组
     *
     * @param id 小组id
     */
    void delete(Long id);

    /**
     * 修改小组
     *
     * @param teamUpdateDTO 小组classUpdateDTO
     */
    void update(TeamUpdateDTO teamUpdateDTO);

    /**
     * 查询小组详情
     *
     * @return 小组详情
     */
    TeamStandardVO get(Long id);

    /**
     * 查询小组列表
     *
     * @return 小组列表
     */
    List<TeamListItemVO> list();

    /**
     * 依据班级id查询小组列表
     *
     * @return id 班级id
     */
    List<TeamListItemVO> listByClassId(Long classId);

}
